//NOTE: being loaded into multiple targets
(function($f) {	$f.extend.feature("myFeature2", "myPlugin2, utils, environment", "84876b22-86be-41cd-a2d1-48a46a313a2c", function(self) {

	"use strict";
	
	// feature info
	this.featureInfo = {
		title: "My Feature 2",
		version: "0.0.1" // major.minor.build
	};

	this.hello = function() {
		$f.alert("Hello World - I am feature 2 of " + self.info.title + ".");
	};
	
	// pre-initialization handler
	// called just after feature instance is created any any merging or includes are processed
	// Note: Since 'self' carries plugin reference, to use feature instance reference, use 'this'
	// returns (boolean): true, if feature to be added, false otherwise
	this.onFeaturePreInit = function() {
		// log
		$f.myPlugin1.lifeCycleElement().append("<p><b>featurePreInit:</b> " + this.featureInfo.title + " is instantiated for " + self.info.title + " plugin, and will be initialized.");

		return true;
	};
	
	// initialization handler
	// called when feature is initialized, however yet not merged
	// Note: Since 'self' carries plugin reference, to use feature instance reference, use 'this'
	// returns (boolean): true, if feature to be added, false otherwise
	this.onFeatureInit = function() {
		// log
		$f.myPlugin1.lifeCycleElement().append("<p><b>featureInit:</b> " + this.featureInfo.title + " is instantiated for " + self.info.title + " plugin, and is initialized.");

		return true;
	};
	
	this.hello = function() {
		$f.alert("Hello World! - I am feature 2 of " + self.info.title + ".");
	};
}); }(fluid));
